The importance of accuracy and repeatability of movements of various positioning devices such as robots, coordinate measuring systems and the like has been recognized for many years, and especially since the development and rapidly expanding use of robotic manipulators and the like in recent years. As technology advances, users of the various positioning devices require increasingly sophisticated and precise performance and dependability.
For example, gantry-type robots and similar positioning devices for robotic or coordinate measuring systems increasingly demand more accuracy for various manufacturing and placement tasks such as welding, assembling, palletizing, etc. The accuracy and repeatability of movements within such systems depend generally on the control system's capabilities, and the resultant performance is clearly degraded by undetectable and/or uncorrected positional errors. Factors contributing to robot inaccuracy include imprecision in robot parameters such as roundoff errors imposed by limited capacity digital control units, imperfect guideways and pathways of the positioning device, bowing, non-planarity, runout and Abbe errors, additive tolerance or tolerance stackup errors, mismatched drive structures, squareness errors, deflection of various structures, non-uniformity of adjacent axes, resonance or natural vibration errors, environmental factors such as temperature and humidity, and the like. All of such imperfections and factors tend to cause angular orientation errors as well as linear translation errors of the position within the rectilinear triordinate system of the working piece of a particular positioning device.
In accordance with the widespread recognition of the need for improved accuracy and repeatability of positioning devices, numerous and various endeavors have been undertaken to respond to the various causes of positional errors. For example, quality inspection with particular attention to accuracy can reduce errors in manufacturing and assembly, and maintaining a predetermined environment can also help provide more consistent robot accuracy. Additionally, various calibration methods utilizing reference matching techniques can generally improve robot accuracy at a particular point in the robot work space. In particular, calibration is a procedure wherein zero reference positions are established at various robot joints in order to command accurate robot moves in cartesian frames. Normally, a predetermined robot pose is selected, and thereafter, a record command is issued to establish a common reference between encoder values and actual joint values in the robot. Upon set-up of the robot, the zero reference positions can be established using a calibration fixture or mastering fixture, which provides reference for the zero angles at the robot joints, and can also determine adjustments needed on various parts of the robot. However, such calibration/mastering is often a tedious manual process which can help establish accuracy at only one particular position in the robot workspace. Moreover, recalibration of the device is often necessary on a periodic basis, and accuracy can only be assured for a short time period following such recalibration.
Another method utilized to minimize certain predictable errors is known as the open-loop method wherein, based upon some predetermined information about the particular robot and factors contributing to its inaccuracy, the open-loop method supplies compensated commands to the robot so that the workpiece accuracy can be improved. In particular, the open-loop method entails collecting measurements of robot movements, modeling such movements to derive compensated commands, and sending such compensated commands to the robot to improve the accuracy of its movement. The measurement and modeling steps of this method are completed in an off-line manner by comparing the workpiece positions measured by an external sensor with robot positions as commanded by the robot controller. Such information is then processed in modeling algorithms and the like to obtain actual errors in the robot's accuracy. Such errors are then fed into the robot controller so that compensated commands can be issued to the robot during on-line operations. It is recognized, however, that the data collection in the open-loop method is a relatively tedious task, and that compensated commands are only as good as the modeling techniques utilized to derive them.
Realizing the inherent problems with the open-loop system, an alternative known as a closed-loop method has also been studied. In such a method, a laser tracking system measures the robot workpiece position, and these position inputs are fed back to the robot control system and compared to robot parameters previously identified in much the same way as described above for the open-loop method. In this way, compensated commands can be derived and supplied to the robot constantly. Such a system, however, is dependent upon the interaction of a plurality of laser tracking systems which must be integrated with each other and with the robot controller. Additionally, only limited translational and angular deviations can be detected and compensated for in such system, and the freedom of movement within the workstation is restricted by the need to maintain the laser beam transmission pathways clear at all times.
An example of a calibration-type system for use with robots is embodied in the measuring system known as "ROBOTEST" available from Polytech Optronics, Inc. of Costa Mesa, California. In particular, the Polytech ROBOTEST measuring tool is used to determine the precision of industrial robots and machine tools. The ROBOTEST device includes a laser interferometer, an optical sensor head with position-sensitive diodes, and a signal processor linked to a data processing computer. This system measures the ability of a robot to reproduce a single position in space, and the ability of the robot to trace a perfect straight line under load and at normal operating speeds. The interferometer measures the linear position of the robot working piece along a reference axis Z, while a separate laser is utilized to define the perfect straight line to be tested, and position-sensitive diodes measure deviations from that straight line. While this system could be a valuable tool for testing and verifying robot motion, it is designed for testing the motion of a robot along a single axis or line, is designed for testing purposes as opposed to continuous integral feedback operation with a working robot, and requires the use of two laser beams to determine roll errors about the axis of motion. Moreover, even if it were adapted for continuous use, the ROBOTEST system is prohibitively expensive to incorporate into each robot.
An arrangement for compensating for offset and angular errors of a laser utilized in a processing or measuring machine is shown in U.S. Pat. No. 4,618,759, which issued to G. Muller et al. on Oct. 21, 1986. The Muller et al. system utilizes beam splitters to direct portions of a laser beam to be controlled to a quadrant detector optic which measures translational errors of the beam, and to a separate quadrant detector for measuring angular errors of the beam. These separate quadrant detectors generate error signals which are used to adjust a pair of servo-controlled mirrors to allegedly null out the translational and angular errors of the laser beam. However, the Muller et al. system is designed to determine and compensate for errors associated with only a single axis of motion, and, consequently, cannot easily be adapted to simultaneously measure the coupled errors of three axes of motion commonly encountered in a working robot. Moreover, the Muller et al. system does not account for roll error about the axis of the laser beam itself.
Consequently, while accuracy and repeatability characteristics of industrial robots and positioning devices in general has been widely recognized in the industry, heretofore there has not been provided an error detection and correction system for positioning devices having a working piece which is moved along a rectilinear triordinate system to enable correction of translational, angular and rotational deviations to improve the accuracy and repeatability of such device. Moreover, previous error sensing devices and techniques entail tedious measuring and modeling techniques, relatively expensive and cumbersome testing equipment, and/or fail to provide for simultaneous error sensing and feedback of movement within a rectilinear triordinate system.